package com.young.coderule.common.annotation;

import java.lang.annotation.*;

/**
 * @DESCRIPTION: 作用在方法上，描述该方法是该实体新增接口。
 * @USER: Young
 * @DATE: 2022/7/29 9:15
 */

@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface CodeRule {

    /**
     * <pre>
     * 被编码实体唯一标识.
     *
     * 说明:
     *     1.可不填写此注解属性.
     *     2.若不填写,则默认生成的标识为: 控制器类名称截取掉'Controller'.
     *     3.若编码存在重复则默认是同一个实体.
     *
     * </pre>
     */
    String code() default "";

    /**
     * 实体名称。可以用来前端展示，不填默认取code
     */
    String name() default "";

    String codeField() default "code";
}
